package com.ruoyi.web.controller.system;

import com.alibaba.fastjson2.annotation.JSONField;
import java.util.List;
import lombok.Data;

/**
 * 订单接口响应根对象
 * 正常响应时code和codeMsg为null，data包含业务数据；
 * 异常响应时code/codeMsg非空且data为null
 */
@Data
public class OrderApiResponse {
    // 接口状态码（正常为null，异常时非null）
    @JSONField(name = "code")
    private String code;
    
    // 状态描述（正常为null，异常时非null）
    @JSONField(name = "codeMsg")
    private String codeMsg;
    
    // 业务数据（正常时有值，异常时为null）
    @JSONField(name = "data")
    private OrderData data;
}

/**
 * 订单接口业务数据对象（正常响应时有效）
 */
@Data
class OrderData {
    // 支付ID（关键返回值）
    @JSONField(name = "pay_id")
    private String payId;
    
    // 论文信息（根据接口实际返回调整类型）
    @JSONField(name = "papers")
    private List<ParseData> papers;
    
    // 支付金额（字符串格式，保留两位小数）
    @JSONField(name = "buyer_money")
    private String buyerMoney;
    
    // 购买数量
    @JSONField(name = "buyer_nums")
    private Integer buyerNums;
}

@Data
class ParseData {
    @JSONField(name = "paper_id")
    private String paperId;

    @JSONField(name = "wordsnum")
    private Integer wordsNum;
}